perm filename TVTAKE.SAI[GEO,BGB] blob sn#001338 filedate 1972-10-28 generic text, type T, neo UTF8
00100	ENTRY DUMMY;
00200	BEGIN	"TVTAKE"
00300		REQUIRE "ABBREV[SYS,BGB]" 	SOURCE_FILE;
00400		INTERNAL INTEGER XSAMPLE,YLINE,WIDTH,BUFCNT;
00500		EXTERNAL PROCEDURE TV;
00600		BOOLEAN BGB;
00700		INTERNAL STRING TVSTR;
00800	
00900	PROCEDURE TVTAKE(INTEGER X,Y,DX,DY);
01000	BEGIN	"TVTAKE"
01100		XSAMPLE		←	X - 144;
01200		YLINE		←	Y - 108;
01300		WIDTH		←	32;
01400		BUFCNT		←	3*DY*WIDTH;
01500		BEGIN
01600		INTERNAL INTEGER ARRAY BUF0,BUF2,BUF4,BUF6[1:6912];
01700		TV;
01800		END;
01900	END	"TVTAKE";
02000		INTEGER X,Y,FLG;
02100		INTEGER ARRAY HEADER[0:9];
02200	INTERNAL PROCEDURE TVSUBR;
02300	BEGIN	"TVSUBR"
02400		INTERNAL INTEGER ARRAY TVBUF[1:10368];
02500		X	←	172;
02600		Y	←	128;
02700	DO BEGIN
02800		OUTSTR(↓&"FILE = ");
02900		BGB ←	((CALL(0,"GETPPN")LAND '777777)='424742);
03000		TVSTR	←	INCHWL;
03100	END	UNTIL LENGTH(TVSTR)≥1 ∧ "A"≤TVSTR ∧ TVSTR≤"Z";
03200		TVTAKE(X,Y,16,108);
03300		HEADER[2]	←	6;
03400		HEADER[5]	←	Y-108;
03500		HEADER[6]	←	Y+108-1;
03600		HEADER[7]	←	X-144;
03700		HEADER[8]	←	X+144-1;
03800		OPEN(2,"DSK",'10,0,3,0,0,0);
03900		IF BGB THEN TVSTR←TVSTR&".TMP[DAT,BGB]";
04000		ENTER(2,TVSTR,FLG);
04100		ARRYOUT(2,HEADER[0],10);
04200		ARRYOUT(2,TVBUF[1],10368);
04300		RELEASE(2);
04400	END	"TVSUBR";
04500	
04600	END	"TVTAKE";